﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml;
using TestesFixacao.Core.Extensions;
using TestesFixacao.Dominio.Modelos;

namespace TestesFixacao.Dominio.Readers
{
    public class AlternativaReader : IConvertible<List<Alternativa>>
    {
        public void Convert(XmlTextReader readerQuestoes, List<Alternativa> alternativas)
        {
            int numeroalternativas = 0;

            var readerAlternativas = readerQuestoes.ElementCount("alternativas", "alternativa", ref numeroalternativas);

            readerAlternativas.ReadStartElement("alternativas");

            for (int i = 0; i < numeroalternativas; i++)
            {
                var item = new Alternativa();

                readerAlternativas.ReadStartElement("alternativa");

                item.Letra = char.Parse(readerAlternativas.ReadElementString("letra"));
                item.Resposta = readerAlternativas.ReadElementString("resposta");
                item.Correta = bool.Parse(readerAlternativas.ReadElementString("correta"));

                readerAlternativas.ReadEndElement();

                alternativas.Add(item);
            }

            readerAlternativas.ReadEndElement();
        }
    }
}